-- lua脚本语言 https://www.lua.org/home.html ，redis支持使用
-- 查询模糊匹配的key，并且同时返回所有key和value
local keyValues = {}
local keys = redis.call('keys','key*')
for i,key in ipairs(keys) do
    local value = redis.call('get',key)
    local tempKey = key .. ' -> '
    keyValues[i] = tempKey .. value
end

-- checkAndSet
local current = redis.call('GET', KEYS[1])
if current == ARGV[1]
then
    redis.call('SET', KEYS[1], ARGV[2])
    --这里抛出异常，之前执行的redis操作不会回滚
    error("lua异常")
    return true
end
return false